[Chapter 3] 3.2 Aliasing
Author: Bryan Costales & Eric Allman
Date: 1999-02-04T00:04:31Z

#

| Chapter 3 Databases |

## 3.2 Aliasing

The source and type of aliases are controlled by the `AliasFile` option and the `aliases` entry in the service-switch file. Alias entries are built from key and value pairs where the key (the list name) is on the left, followed by a colon, then by one or more members that form the value (see §24.1):

>     list: member1, member2, ...

The sequence of members can be continued on subsequent lines by beginning each such continuation line with white space.

>     list: member1, member2,
>              member3, member4, ...

Each list member may be a user address, a file name, a program reference, or a `:include:` reference.

addresses

  Are either standard email addresses (a local user or alias name or a user@host, where comments and "Full Name <user@host>" syntaxes are acceptable), or a local user name prefixed with a backslash (which forces immediate delivery, see §24.2.1).

files

  Are specified by prefixing the file name with a forward slash (e.g., /path/file); thus all file specifications must be full pathnames. Files must be world writable, or must have the setuid bit set but no execute bits set. Delivery is made by appending the message to the file (see §24.2.2).

programs

  Are specified by prefixing the program with a vertical bar (e.g., |/path/program). If the program's invocation includes command-line arguments, it must be quoted. Programs are run as the sender (if local) or the default user (set by the `DefaultUser` option). Delivery is made by piping the message through the program (see §24.2.3).

`:include:`

  Says that additional aliases will be read from a specified file, which must be a full pathname:

  >     :include: /path/file

  The file listed in a `:include:` reference must be world readable. The syntax of a file is identical to the syntax of a .forward file (described below). The owner of the `:include:` file is used for the permissions for writing files, running programs, and reading recursive `:include:` files (see §25.2).

Aliases are not processed until the alias database is rebuilt using the newaliases command or the -bi command-line switch (see §24.5.1).

3.1 Support in Makefile |  | 3.3 The ~/.forward file